/**
 * Copyright (c) 2013-Now http://jeesite.com All rights reserved.
 */
package com.jeesite.modules.zx.examination.room.scene.entity;

import org.hibernate.validator.constraints.Length;
import java.util.Date;
import com.jeesite.common.mybatis.annotation.JoinTable;
import com.jeesite.common.mybatis.annotation.JoinTable.Type;
import com.fasterxml.jackson.annotation.JsonFormat;

import com.jeesite.common.entity.DataEntity;
import com.jeesite.common.mybatis.annotation.Column;
import com.jeesite.common.mybatis.annotation.Table;
import com.jeesite.common.mybatis.mapper.query.QueryType;

/**
 * 考试考场场次Entity
 * @author zpp
 * @version 2020-03-23
 */
@Table(name="t_examination_room_scene", alias="a", columns={
		@Column(name="id", attrName="id", label="id", isPK=true),
		@Column(name="exam_id", attrName="examId", label="考试标识"),
		@Column(name="room_id", attrName="roomId", label="考场标识"),
		@Column(name="scene_name", attrName="sceneName", label="场次名称", queryType=QueryType.LIKE),
		@Column(name="actual_starttime", attrName="actualStarttime", label="实操开始时间"),
		@Column(name="actual_endtime", attrName="actualEndtime", label="实操结束时间"),
		@Column(name="start_date", attrName="startDate", label="理论开始时间"),
		@Column(name="end_date", attrName="endDate", label="理论结束时间"),
		@Column(name="person_num", attrName="personNum", label="人员限制"),
	}, orderBy="a.id DESC"
)
public class TexaminationRoomScene extends DataEntity<TexaminationRoomScene> {
	
	private static final long serialVersionUID = 1L;
	private String examId,roomId;		// 考试标识
	private String sceneName;		// 场次名称
	private Date actualStarttime;		// 实操开始时间
	private Date actualEndtime;		// 实操结束时间
	private Date startDate;		// 理论开始时间
	private Date endDate;		// 理论结束时间
	private Long personNum;		// 人员限制
	
	public String getRoomId() {
		return roomId;
	}

	public void setRoomId(String roomId) {
		this.roomId = roomId;
	}

	public TexaminationRoomScene() {
		this(null);
	}

	public TexaminationRoomScene(String id){
		super(id);
	}
	
	@Length(min=0, max=50, message="考试标识长度不能超过 50 个字符")
	public String getExamId() {
		return examId;
	}

	public void setExamId(String examId) {
		this.examId = examId;
	}
	
	@Length(min=0, max=50, message="场次名称长度不能超过 50 个字符")
	public String getSceneName() {
		return sceneName;
	}

	public void setSceneName(String sceneName) {
		this.sceneName = sceneName;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	public Date getActualStarttime() {
		return actualStarttime;
	}

	public void setActualStarttime(Date actualStarttime) {
		this.actualStarttime = actualStarttime;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	public Date getActualEndtime() {
		return actualEndtime;
	}

	public void setActualEndtime(Date actualEndtime) {
		this.actualEndtime = actualEndtime;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	public Date getStartDate() {
		return startDate;
	}

	public void setStartDate(Date startDate) {
		this.startDate = startDate;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	public Date getEndDate() {
		return endDate;
	}

	public void setEndDate(Date endDate) {
		this.endDate = endDate;
	}
	
	public Long getPersonNum() {
		return personNum;
	}

	public void setPersonNum(Long personNum) {
		this.personNum = personNum;
	}
	
}